﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using FacialClub.Models.Entities;

namespace FacialClub.Models.Interfaces
{
    /// <summary>
    /// Settings Repository Interface
    /// </summary>
    public interface ISettingsRepository
    {

    }

    /// <summary>
    /// Company Information Interface
    /// </summary>
    public interface ICompanyInfoRepository
    {
        /// <summary>
        /// Get Company Info
        /// </summary>
        /// <returns></returns>
        IQueryable<CompanyInfo> FindAllCompanyInfo();

        /// <summary>
        /// Get Company Info By Name
        /// </summary>
        /// <param name="strQuery"></param>
        /// <returns></returns>
        IQueryable<CompanyInfo> FindCompanyInfoByName(string strQuery);

        /// <summary>
        /// Get Company Info By Id
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        CompanyInfo GetCompanyInfoById(int id);

        /// <summary>
        /// Add Company Info in the Database
        /// </summary>
        /// <param name="companyInfo"></param>
        void Add(CompanyInfo companyInfo);

        /// <summary>
        /// Delete Notification from the Database
        /// </summary>
        /// <param name="companyInfo"></param>
        void Delete(CompanyInfo companyInfo);

        /// <summary>
        /// Save record in the database
        /// </summary>
        void Save();
    }


}